A Debugging System Based on Natural Semantics
نویسندگان
چکیده
Due to the absence of side effects, reasoning about functional programs is simpler than reasoning about their imperative counterparts. However, because of the absence of practical debuggers, finding bugs in lazy functional languages has been more complex until quite recently. One of the easiest to use Haskell debuggers is Hood. Its behavior is based on the concept of observation of intermediate data structures. However, although using Hood can be simple when observing some structures, it is known that it can be hard to understand how it works when dealing with complex situations. In fact, the author of Hood recognizes that it is necessary to formalize its behavior to explain better what should be expected, and also to allow to check whether the different implementations work properly. In this paper, we formalize the behavior of the Hood debugger by extending Sestoft’s natural semantics. Moreover, we also show how to derive an abstract machine including such debugging information. By doing so, we do not only provide a formal foundation, but we also provide an alternative method to implement debuggers. In fact, we have already made a prototype of the abstract machine presented in this paper.
منابع مشابه
Natural Language Generation for Legal Expert System and Visualization of Generation Process
An HPSG-based grammar and a sentence generation system for small set of Japanese in legal expert domain are constructed. The system adopts its own general semantic system into which a domainspeci c logical form is converted. This separation between domain-speci c semantics and linguistic one gives exibility to both the task processing and the sentence generation. We also propose a visualization...
متن کاملA New Proposal for Debugging Datalog Programs
In this paper, we propose to apply declarative debugging to Datalog programs. Our approach relies on program semantics rather than on the computation mechanism. The debugging process starts when the user detects an unexpected answer. By asking questions about the intended semantics, the debugger looks for incorrect program relations. While usual declarative debuggers for other languages are bas...
متن کاملA Simple Syntax for Complex Semantics
As part of a long-ranged project that aims at establishing databasetheoretic semantics as a model of computational semantics, this presentation focuses on the development of a syntactic component for processeing strings of words or sentences to construct semantic data structures. For design and modeling purposes, the present treatment will be restricted to the analysis of some problematic const...
متن کاملAn Eclipse-based Integrated Environment for Developing Executable Structural Operational Semantics Specifications
The Structural Operational Semantics Development Tooling (SOSDT) Eclipse Plugin integrates the Relational Meta-Language (RML) compiler and debugger with the Eclipse Integrated Development Environment Framework. SOSDT, together with the RML compiler and debugger, provides an environment for developing and maintaining executable Structural Operational Semantics specifications, including the Natur...
متن کاملSemantics-based Automated Web Testing
We present TAO, a software testing tool performing automated test and oracle generation based on a semantic approach. TAO entangles grammar-based test generation with automated semantics evaluation using a denotational semantics framework. We show how TAO can be incorporated with the Selenium automation tool for automated web testing, and how TAO can be further extended to support automated del...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- J. UCS
دوره 15 شماره
صفحات -
تاریخ انتشار 2009